package com.gateway.register.client.api;

import com.gateway.register.common.config.GatewayRegisterCenterConfig;
import com.gateway.register.common.dto.MetaDataRegisterDTO;
import com.gateway.register.common.dto.RouteRegisterDTO;

/**
 * @program: api-gateway
 * @description:
 * @author: YuKai Fan
 * @create: 2025/1/29 22:49
 **/
public interface GatewayClientRegisterRepository {

    /**
     * init
     * @param config config
     */
    default void init(GatewayRegisterCenterConfig config) {

    }

    /**
     * 持久化接口
     * @param metaDataDTO
     */
    void persistInterface(final MetaDataRegisterDTO metaDataDTO);

    /**
     * 持久化路由
     * @param routeRegisterDTO
     */
    void persistRoute(final RouteRegisterDTO routeRegisterDTO);

    /**
     * close
     */
    default void close() {

    }
}
